// js是一门计算机语言和Java类似
// 变量，运算符 对象 类 包 方法 访问修饰符  关键字 基本数据类型
// js的基础
//      Java                             js
// 变量  int a=1;                     let a=1;变量 const b=1;常量
// 运算符  一样
// 对象 一样  new Object();
// 类：一样
// 方法：使用方式一样，定义有区别
//  function  method(num) {
//     return num;
// }
//
// let aa=method(1);
// TS
// js的数据类型怎么判断？根据后面的值进行判断
//  a = 1;// 数值
// let b = "a";
// bb = 'a';// 字符串  js没有不区分单双引号，
// let c = {name: "", pass: ""};//对象,json对象和js对象的区别？json对象key也需要用双引号
// let d = [a, b, c, []];
// let f = true;
// var a = 1;  建议以后不要使用， var和let的区别？
// 点击某个div，因为要对自己做事件，需要得到对象
function changeCode(obj) {
// src="/code"
//   $(obj)得到对象
//    $("#id"); $(".class")
//    浏览器有一个保护机制：每一次访问后台如果地址一样，则直接取缓存数据
//    既然这样，那么每次访问后台地址不一样即可
    $(obj).attr("src", "/code?aa=" + Math.random());
}

// 页面加载完成执行里面的代码
$(function () {
    // layui有很多模板，不可能每次都把所有模板加载完全，
    // 只需按需加载即可
    layui.use('form', function () {
        let form = layui.form;
        console.log(form)//打印form表单
        //自定义验证规则
        form.verify({
            required: [/^[A-z0-9]{4,16}/, "用户名只能是字符加数字必须4到16位"],
            pass: [/(.+){6,12}$/, '密码必须6到12位'],
            code: [/^[a-z0-9]{4}$/, "验证码只能是4位字符加数字"]
        });
        // layer.msg('玩命卖萌中', {icon: 1, time: 2000});
        //监听提交
        form.on('submit(login)', function (data) {
            // 将得到的值对以前的data覆盖
            data = data.field;
            // let aa=data.field;
            // 调用Java后台，将data数据传递到Java
            // ajax();默认前后的传递数据全是json格式的数据
            console.log(data);
            $.ajax({
                url: '/login',//对应后台WebServlet的注解地址
                data: data,//要传递到Java的数据
                type: 'post',//对应doGet或者doPost的方法
                dataType: 'json',//固定用法
                success: function (res) {//如果成功，则需要接收后台返回的数据，
                    console.log(res);
                    if (res.msg == 'error-code') {
                        layer.msg('验证码错误，请重新输入', {icon: 1, time: 2000});
                    }
                    if (res.msg == 'error') {
                        layer.msg('用户名或密码错误，请重新输入', {icon: 1, time: 2000});
                    }
                    if (res.msg == 'success') {
                        layer.msg('登录成功，即将跳转到管理页面', {icon: 1, time: 2000}, function () {
                            //以后会遇到前端框架
                            sessionStorage.setItem("username",data.username);
                            window.open("/html/index.html", '_top');
                        });
                    }
                }
            });
            // alert(888)
            // console.log(data)
            // layer.msg(JSON.stringify(data.field), function () {
            //     location.href = 'index.html'
            // });
            // 不让点击按钮时刷新页面
            return false;
        });
        // form.on("submit(test)", function () {
        //     console.log(111)
        // })
    });
})